package uit.ce.hungtrung.network;

import java.io.FileNotFoundException;
import java.io.IOException;
import java.net.MalformedURLException;

import org.json.JSONException;
import org.json.JSONObject;

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;

public class FacebookManager {
	private static String APP_ID = "681078211952687"; // Replace with your App
														// ID

	// // Instance of Facebook Class
	// @SuppressWarnings("deprecation")
	// private Facebook facebook = new Facebook(APP_ID);
	// private AsyncFacebookRunner mAsyncRunner;
	// String FILENAME = "AndroidSSO_data";
	// private SharedPreferences mPrefs;
	//
	// protected FacebookManager(){
	// mAsyncRunner = new AsyncFacebookRunner(facebook);
	// }
	//
	// static FacebookManager instance = null;
	// public static FacebookManager Instance(){
	// if(instance == null){
	// instance = new FacebookManager();
	// }
	// return instance;
	// }
	// /**
	// * Function to login into facebook
	// * */
	// @SuppressWarnings("deprecation")
	// public void loginToFacebook(final Activity activity) {
	//
	// mPrefs = activity.getPreferences(Context.MODE_PRIVATE);
	// String access_token = mPrefs.getString("access_token", null);
	// long expires = mPrefs.getLong("access_expires", 0);
	//
	// if (access_token != null) {
	// facebook.setAccessToken(access_token);
	// Log.d("FB Sessions", "" + facebook.isSessionValid());
	// }
	//
	// if (expires != 0) {
	// facebook.setAccessExpires(expires);
	// }
	//
	// if (!facebook.isSessionValid()) {
	// facebook.authorize(activity,
	// new String[] { "email", "publish_stream" },
	// new DialogListener() {
	//
	// @Override
	// public void onCancel() {
	// // Function to handle cancel event
	// }
	//
	// @Override
	// public void onComplete(Bundle values) {
	// // Function to handle complete event
	// // Edit Preferences and update facebook acess_token
	// SharedPreferences.Editor editor = mPrefs.edit();
	// editor.putString("access_token",
	// facebook.getAccessToken());
	// editor.putLong("access_expires",
	// facebook.getAccessExpires());
	// editor.commit();
	// postToWall(activity);
	// }
	//
	// @Override
	// public void onError(DialogError error) {
	// // Function to handle error
	//
	// }
	//
	// @Override
	// public void onFacebookError(FacebookError fberror) {
	// // Function to handle Facebook errors
	//
	// }
	//
	// });
	// }
	// }
	//
	// /**
	// * Get Profile information by making request to Facebook Graph API
	// * */
	// public void getProfileInformation() {
	// mAsyncRunner.request("me", new RequestListener() {
	// @Override
	// public void onComplete(String response, Object state) {
	// Log.d("Profile", response);
	// String json = response;
	// try {
	// // Facebook Profile JSON data
	// JSONObject profile = new JSONObject(json);
	//
	// // getting name of the user
	// final String name = profile.getString("name");
	//
	// // getting email of the user
	// final String email = profile.getString("email");
	//
	// } catch (JSONException e) {
	// e.printStackTrace();
	// }
	// }
	//
	// @Override
	// public void onIOException(IOException e, Object state) {
	// }
	//
	// @Override
	// public void onFileNotFoundException(FileNotFoundException e,
	// Object state) {
	// }
	//
	// @Override
	// public void onMalformedURLException(MalformedURLException e,
	// Object state) {
	// }
	//
	// @Override
	// public void onFacebookError(FacebookError e, Object state) {
	// }
	// });
	// }
	//
	// /**
	// * Function to post to facebook wall
	// * */
	// public void postToWall(Activity activity) {
	// // post on user's wall.
	// facebook.dialog(activity, "feed", new DialogListener() {
	//
	// @Override
	// public void onFacebookError(FacebookError e) {
	// }
	//
	// @Override
	// public void onError(DialogError e) {
	// }
	//
	// @Override
	// public void onComplete(Bundle values) {
	// }
	//
	// @Override
	// public void onCancel() {
	// }
	// });
	//
	// }
	//
	// /**
	// * Function to show Access Tokens
	// * */
	// public void showAccessTokens() {
	// String access_token = facebook.getAccessToken();
	// }
	//
	// /**
	// * Function to Logout user from Facebook
	// * */
	// public void logoutFromFacebook(Activity activity) {
	// mAsyncRunner.logout(activity, new RequestListener() {
	// @Override
	// public void onComplete(String response, Object state) {
	// Log.d("Logout from Facebook", response);
	// }
	//
	// @Override
	// public void onIOException(IOException e, Object state) {
	// }
	//
	// @Override
	// public void onFileNotFoundException(FileNotFoundException e,
	// Object state) {
	// }
	//
	// @Override
	// public void onMalformedURLException(MalformedURLException e,
	// Object state) {
	// }
	//
	// @Override
	// public void onFacebookError(FacebookError e, Object state) {
	// }
	// });
	// }
}
